package com.ruoyi.system.domain.module.mer;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.system.domain.module.product.Product;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
import java.math.BigDecimal;
import java.util.List;

/**
 * 商家抵扣券表 对象 mer_coupon
 *
 * @author ruoyi
 * @date 2022-02-24
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("mer_coupon")
public class MerCoupon implements Serializable {

    private static final long serialVersionUID = 1L;


    /**
     * $column.columnComment
     */
    @TableId(value = "id",type = IdType.AUTO)
    private Long id;

    /**
     * 商家id
     */
    private Integer merId;

	/**
	 * 券类型 0 - 抵扣券   1 - 凌云线下抵扣券
	 */
	private Integer couponType;

    /**
     * 商家名称
     */
    private String merName;

    /**
     * 优惠券名称
     */
    private String couponName;

    /**
     * 抵扣券的购买价格
     */
    private BigDecimal price;

    /**
     * 抵扣的价格
     */
    private BigDecimal dikouPrice;

    /**
     * 抵扣券的分佣比例  100 全部归平台所有
     */
    private BigDecimal subRate;

    /**
     * 添加时间
     */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 有效期的类型  0 - 有效期范围内有效  1 - 一直有效
     */
    private Integer validateType;

    /**
     * 有效期的开始时间
     */
	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date beginTime;

    /**
     * 有效期的结束时间
     */
	@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;

    /**
     * 优惠券 状态值
     */
    private Integer state;

	/**
	 *  当前销量
	 */
	private Integer sales;

    /**
     * 详情信息
     */
    private String remark;

    /**
     * 购买须知
     */
    private String buyingTips;

    /**
     * 是否都可以抵扣，0 - 否，要选中抵扣商品才能使用 1 - 都可抵扣
     */
    private Integer isAll;


	/**
	 *  券的logo
	 */
	private String imgUrl;

	/**
	 *  券的logo
	 */
	@TableField(exist = false)
	private String imgUrlPath;


    @TableField(exist = false)
    private List<Product> merProducts;

    @TableField(exist = false)
    private List<Integer> merProductIds;

}
